IF exists(SELECT * FROM dbo.sysobjects WHERE name='WEB_adviesOpvolging' AND xtype='P') 
BEGIN
	DROP PROCEDURE WEB_adviesOpvolging
END
GO

CREATE          procedure WEB_adviesOpvolging
(@schooljaar char(4))
as
set nocount on
execute aa_VulCijferMateriaal @schooljaar

select 0 as hoofdNr,'0' as klasNr,0 as volgNr,'<?xml version="1.0"  encoding="ISO-8859-1" ?>' as tekst
union
select 1,'0',0,'<resultaten schooljaar="' + @schooljaar + '">'
union
select distinct 2,klas,0,'<klas klasNaam="' + rtrim(klas) + '">'
from leerlingen..leerlingen
where not(left(klas,1)='1') and not(klas='weg') 
union
select 2,klas,1,'<v>' + isNull(vak1 + ' ','') + isNull(vak2 + ' ','') + 
	isNull(vak3 + ' ','') +  isNull(vak4 + ' ','') + '</v>' from aa_majorvakken
union
select 2,opv.klas,1,isnull('<' + opv.status + '>' 
		+ convert(varchar(8000),a.adviesCode) + '</' + opv.status + '>','') 
	from aa_adviesopvolging as opv
	  left join advies as a
	  on a.adviescode = opv.code
union
select 2,r.klas,1,'<' + r.tag + '>' + convert(varchar(5),r.aantal) + '</' + tag + '>'
from
	(select klas,studieSucces + adviesOpvolging as tag,
	 count(studieSucces + adviesOpvolging) as aantal 
		from aa_individueel(@schooljaar) 
	 group by klas,studieSucces + adviesOpvolging) as r
union
select 2,a.klas,2,'<lln iNr="' + a.inschrijvingsNr 
 		+ '" klas="' + a.klas + '"><naam>'  
	+ ll.voornaam + ' ' + ll.achternaam+ '</naam>' + '<vak cijfer="' 
        + convert(varchar(10),a.cijfer) + '" kwartiel="' + convert(varchar(2),a.kwartiel) + '">' + a.vak 
	+ '</vak></lln>'
from aa_waarschuwingAnalyse(@schooljaar) as a 
left join alleGestarteLln as ll
on ll.inschrijvingsNr = a.inschrijvingsNr
where not(left(a.klas,1)='1') and not(a.klas='weg')
union
select distinct 2,klas,3,'</klas>'
from leerlingen..leerlingen
where not(left(klas,1)='1') and not(klas='weg')
union
select 3,groep,0,'<groep klasNaam="' + g.groep + '">'
from
  (select distinct groep from aa_groepering) as g

union
select 3,groep,1,'<' + r.tag + '>' + convert(varchar(5),r.aantal) + '</' + tag + '>'
from
	(select groep as groep,studieSucces + adviesOpvolging as tag,
	 count(studieSucces + adviesOpvolging) as aantal 
		from aa_individueel(@schooljaar) as i
	 left join aa_groepering as g
		on g.klas = i.klas
         group by groep,studieSucces + adviesOpvolging) as r
union
select 3,groep,2,'<lln iNr="' + a.inschrijvingsNr 
 		+ '" klas="' + a.klas + '"><naam>'  
	+ ll.voornaam + ' ' + ll.achternaam+ '</naam>' + '<vak cijfer="' 
        + convert(varchar(10),a.cijfer) 
	+ '" kwartiel="' + convert(varchar(2),a.kwartiel) + '">' + a.vak 
	+ '</vak></lln>'
from aa_waarschuwingAnalyse(@schooljaar) as a 
	left join alleGestarteLln as ll
		on ll.inschrijvingsNr = a.inschrijvingsNr
	left join aa_groepering as g
		on g.klas = a.klas
where not(left(a.klas,1)='1') and not(a.klas='weg')
union
select 3,groep,3,'</groep>'
from
  (select distinct groep from aa_groepering) as g
union
select 4,'0',0,'<adviezen>'
union
select 4,adviesCode,0,'<advies><c>' + isNull(adviesCode,'')
	+ '</c><t>' + isNull(convert(varchar(8000),adviesTekst),'') + '</t></advies>'
       from advies where huidig = 1
union
select 5,'0',0,'</adviezen>'
union
select 6,'0',0,'</resultaten>'
order by hoofdNr,klasNr